﻿Public Class solicitudservicioj
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        seguridad.verificapermisos()
        txtSolicitante1.Text = seguridad.usuaronombrecompleto1
        comoempresa11.SelectedValue = seguridad.empresa1
        combodepto11.SelectedValue = seguridad.departamento1
    End Sub

    Protected Sub Button11_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button11.Click
        seguridad.descripcionsolicitud = txtdescrip11.Text

        '////////////////////////////////////////
        Dim Fecha As String
        Dim hora As String
        hora = Convert.ToString(TimeOfDay.TimeOfDay.ToString)
        Fecha = Date.Today.ToString("dd/MM/yyyy")
        Dim Permiso As String = 0
        Dim estado As String = "No procesado"
        '////////////////////////////////////////

        '///////////////////////////////variables para enviar por correo sobre la solicitud////////////////

        correo.solicituDepto = combodepto11.SelectedItem.Text
        correo.solicitudEmpresa = comoempresa11.SelectedItem.Text
        correo.solicitudEmpleadoname = txtSolicitante1.Text



        '///////////////////////////////////////////////////////////////////////////////////////////



        '/////////////////////////////////////////////////////////////////////////////
        Dim tablesolicitudes As DataSet1TableAdapters.solicitudesTableAdapter
        Dim tabladetalleuser As DataSet1TableAdapters.detalleusuarioTableAdapter
        Dim tablausuer As DataSet1TableAdapters.usuariosTableAdapter
        '/////////////////////////////////////////////////////////////////////////////





        '//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        'tablesolicitudes.InsertQuery(hora, Fecha, combodepto.Value, comoempresa.Value, txtdescrip.Text, 0, 0, seguridad.usuarioid1, comoempresa.Value, 2)
        ' Dim nombre As String = tablausuer.GetDataBy1BuscaPorNivelusuario(3).Item(0).departamentoid
        Try
            Dim query As String = String.Format("SELECT usuarioid, usuarionombrecompleto,usuarioemail ,empresaid, departamentoid,rangoid FROM    usuarios WHERE rangoid = '{0}' ", 3) 'tecnico
            Dim con As New Devart.Data.PostgreSql.PgSqlConnection(seguridad.conexion) ' hacemos la conexion , pero la traemos desde clase seguridad
            con.Open()
            Dim Ejec1 As New Devart.Data.PostgreSql.PgSqlCommand(query, con)

            Dim registro As Devart.Data.PostgreSql.PgSqlDataReader = Ejec1.ExecuteReader()



            While registro.Read()

                If Convert.ToString(registro.Item("usuarioemail")) <> "" Then
                    seguridad.tecniconame = Convert.ToString(registro.Item("usuarionombrecompleto"))
                    correo.enviacorreos(Convert.ToString(registro.Item("usuarioemail")), 1, 2)
                End If

                registro.NextResult()

            End While
            'cerramos conexion del query buscaemail
            con.Close()


        Catch ex As Exception

        End Try


        '/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        'Busca los admini y manda correo
        Try

            Dim query2 As String = String.Format("SELECT usuarioid, usuarionombrecompleto,usuarioemail ,empresaid, departamentoid,rangoid FROM    usuarios WHERE rangoid = '{0}' ", 1) 'admin
            Dim con2 As New Devart.Data.PostgreSql.PgSqlConnection(seguridad.conexion) ' hacemos la conexion , pero la traemos desde clase seguridad
            con2.Open()
            Dim Ejec2 As New Devart.Data.PostgreSql.PgSqlCommand(query2, con2)
            Dim registro2 As Devart.Data.PostgreSql.PgSqlDataReader = Ejec2.ExecuteReader()

            While registro2.Read()

                If Convert.ToString(registro2.Item("usuarioemail")) <> "" Then

                    seguridad.tecniconame = Convert.ToString(registro2.Item("usuarionombrecompleto"))
                    correo.enviacorreos(Convert.ToString(registro2.Item("usuarioemail")), 1, 2)

                End If


                registro2.NextResult()

            End While
            con2.Close()

        Catch ex As Exception

        End Try

        '////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        'insertando en la db la solicitud
        Try


            'MsgBox(seguridad.usuarioid1)
            Dim query2 As String = String.Format("INSERT INTO solicitudes (hora, fecha, departamentoid, empresasid, descripcion, estado, permiso, usuarioid, servicioid)    VALUES ('{0}', '{1}', '{2}', '{3}', '{4}', '{5}','{6}', '{7}', '{8}')", hora, Fecha, combodepto11.SelectedValue, comoempresa11.SelectedValue, txtdescrip11.Text, estado, Permiso, seguridad.usuarioid1, combotiposolicitud11.SelectedValue)
            Dim conn As New Devart.Data.PostgreSql.PgSqlConnection(seguridad.conexion) ' hacemos la conexion , pero la traemos desde clase seguridad

            Dim Ejec2 As New Devart.Data.PostgreSql.PgSqlCommand(query2, conn)
            conn.Open()

            ''Ejec2.BeginExecuteNonQuery()
            Ejec2.ExecuteNonQuery()
            conn.Close()
        Catch ex As Exception
            ' MsgBox("No se pudo insertar el registro en la base de datos")
        End Try



        Dim script As String = "<script type='text/javascript'>" & _
                                    "alert('Solicitud enviada con exito');" & _
                                "</script>"

        ScriptManager.RegisterStartupScript(Me, GetType(Page), "alerta", script, False)

        txtdescrip11.Text = ""
        combotiposolicitud11.Text = Nothing
        combodepto11.Text = Nothing
        comoempresa11.Text = Nothing

        System.Web.HttpContext.Current.Response.Redirect("~/Inicio/InicioJ.aspx")
        'Dim opcion As Integer
        'opcion = MsgBox("¿Desea crear otra solicitud?", MsgBoxStyle.YesNo + MsgBoxStyle.Question, "Solicitud envidad exitosamente")
        'If opcion = vbYes Then
        '    Try
        '        txtdescrip.Text = ""
        '        combotiposolicitud.Text = ""
        '        combodepto.Text = ""
        '        comoempresa.Text = ""


        '    Catch ex As Exception
        '        MsgBox("Lo sentimos, no se puedo resolver su solicitud", MsgBoxStyle.Critical, "Error")
        '    End Try
        'Else
        '    System.Web.HttpContext.Current.Response.Redirect("~/inicio1.aspx")

        'End If
    End Sub

    Protected Sub Button22_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button22.Click
        System.Web.HttpContext.Current.Response.Redirect("~/Inicio/InicioJ.aspx")
    End Sub
End Class